using System;
using System.ComponentModel;

namespace jSLCore.Client.Presentation.BaseControl
{
    public class MultiDoWorkEventArgs : DoWorkEventArgs
    {
        public MultiDoWorkEventArgs(object[] argument)
            : base(argument)
        {

        }

        public string String
        {
            get
            {
                return (string) Argument;
            }
        }

        public Guid Guid
        {
            get
            {
                return (Guid) Argument;
            }
        }

        public bool Boolean
        {
            get
            {
                return (bool) Argument;
            }
        }

        public int Int
        {
            get
            {
                return (int) Argument;
            }
        }

        public DateTime DateTime
        {get
        {
            return (DateTime) Argument;
        }

            
        }

        public new object Argument
        {
            get
            {
                return Params[0];
            }
        }

        public object[] Params
        {
            get
            {
                return (object[])base.Argument;
            }
        }
    }
}